/* Jogo da Velha */

package velha;  
  
import javax.swing.JOptionPane;  
  
public class Main {  
  
  // testando commit de novo
    public static void main(String[] args) {  
        String matriz[][]={{" "," "," "},{" "," "," "},{" "," "," "}}; // Matriz de jogo vazia
        int d,l,c,e,f,i,cont;  // var
        String a,b;  // Jogadas
        System.out.println("    Jogo da velha ");  // Tabuleiro inicial
        System.out.println("___|__1__|__2__|__3__");  
        System.out.println("1__|_____|_____|_____");  
        System.out.println("2__|_____|_____|_____");  
        System.out.println("3__|_____|_____|_____");  
  
        f=2;  //inicia par
        d=0; 
        cont=0;
  
        while(d==0){  
            e=0;  
            while(e==0){  // inserir a posição
                cont++;
                if(cont >9){
                    System.out.println(" Empate");
                     System.exit(0);
                }
                    
                a=JOptionPane.showInputDialog("Numero da linha");  
                l=Integer.parseInt(a);  
                b=JOptionPane.showInputDialog("Numero da Coluna");  
                c=Integer.parseInt(b);  
                // testa se a posição ja esta oupada
                if(("X".equals(matriz[l-1][c-1]))||("O".equals(matriz[l-1][c-1]))){  
                    System.out.println("Posição ja ocupada");
                    e=0;  
                }  
                else{  // verifica a vez
                    if(f%2==0){  
                        matriz[l-1][c-1]="X";  
                    }  
                    else{  
                        matriz[l-1][c-1]="O";  
                    }  
                    e=1;  
                }  
             }
        for(i=0;i<10;i++) // limpa a tela
            {
           System.out.print("\r\n"); 
            }
        // printa o tabuleiro novamente
        System.out.println("    Jogo da velha "); 
        System.out.println("___|__1__|__2__|__3__");  
        System.out.println("1__|__"+matriz[0][0]+"__|__"+matriz[0][1]+"__|__"+matriz[0][2]+"__");  
        System.out.println("2__|__"+matriz[1][0]+"__|__"+matriz[1][1]+"__|__"+matriz[1][2]+"__");  
        System.out.println("3__|__"+matriz[2][0]+"__|__"+matriz[2][1]+"__|__"+matriz[2][2]+"__");  
        System.out.println();  
        f++;  // Incrementa o contador das jogadas
         
        // Testa se há vencedor 
        if((matriz[0][0]=="X")&(matriz[0][1]=="X")&(matriz[0][2]=="X")){  
            System.out.println(" (X) VENCEU");  
            System.exit(0);
        }  
        else{  
            d=0;  
        }  
        if((matriz[0][0]=="O")&(matriz[0][1]=="O")&(matriz[0][2]=="O")){  
            System.out.println(" (O) VENCEU");  
            System.exit(0);
        }  
        else{  
            d=0;  
        }  
        if((matriz[1][0]=="X")&(matriz[1][1]=="X")&(matriz[1][2]=="X")){  
            System.out.println(" (X) VENCEU");  
            System.exit(0);
        }  
        else{  
            d=0;  
        }  
        if((matriz[1][0]=="O")&(matriz[1][1]=="O")&(matriz[1][2]=="O")){  
            System.out.println(" (O) VENCEU");  
            System.exit(0);
        }  
        else{  
            d=0;  
        }  
        if((matriz[2][0]=="X")&(matriz[2][1]=="X")&(matriz[2][2]=="X")){  
            System.out.println(" (X) VENCEU");  
            System.exit(0);
        }  
        else{  
            d=0;  
        }  
        if((matriz[2][0]=="O")&(matriz[2][1]=="O")&(matriz[2][2]=="O")){  
            System.out.println(" (O) VENCEU");  
            System.exit(0);
        }  
        else{  
            d=0;  
        }  
        if((matriz[0][0]=="X")&(matriz[1][1]=="X")&(matriz[2][2]=="X")){  
            System.out.println(" (X) VENCEU");  
            System.exit(0);
        }  
        else{  
            d=0;  
        }  
        if((matriz[0][0]=="O")&(matriz[1][1]=="O")&(matriz[2][2]=="O")){  
            System.out.println(" (O) VENCEU");  
            System.exit(0);
        }  
        else{  
            d=0;  
        }  
        if((matriz[2][0]=="X")&(matriz[1][1]=="X")&(matriz[0][2]=="X")){  
            System.out.println(" (X) VENCEU");  
            System.exit(0);
        }  
        else{  
            d=0;  
        }  
        if((matriz[2][0]=="O")&(matriz[1][1]=="O")&(matriz[0][2]=="O")){  
            System.out.println(" (O) VENCEU");  
            System.exit(0);
        }  
        else{  
            d=0; 
        }
        ////////////////////////////////////////////////////////////////////////
        if((matriz[0][0]=="X")&(matriz[1][0]=="X")&(matriz[2][0]=="X")){  
            System.out.println(" (X) VENCEU");  
            System.exit(0);
        }  
        else{  
            d=0; 
        }
         if((matriz[0][0]=="O")&(matriz[1][0]=="O")&(matriz[2][0]=="O")){  
            System.out.println(" (O) VENCEU");  
            System.exit(0);
        }  
        else{  
            d=0; 
        }
        if((matriz[0][1]=="X")&(matriz[1][1]=="X")&(matriz[2][1]=="X")){  
            System.out.println(" (X) VENCEU");  
            System.exit(0);
        }  
        else{  
            d=0; 
        }
           if((matriz[0][1]=="O")&(matriz[1][1]=="O")&(matriz[2][1]=="O")){  
            System.out.println(" (O) VENCEU");  
            System.exit(0);
        }  
        else{  
            d=0; 
        }
        if((matriz[0][2]=="X")&(matriz[1][2]=="X")&(matriz[2][2]=="X")){  
            System.out.println(" (X) VENCEU");  
            System.exit(0);
        }  
        else{  
            d=0; 
        }
         if((matriz[0][2]=="O")&(matriz[1][2]=="O")&(matriz[2][2]=="O")){  
            System.out.println(" (O) VENCEU");  
            System.exit(0);
        }  
        else{  
            d=0; 
        }
       
       }  
        
    } 
}
// Fim